Many companies and other organizations operate large web sites that are used by their customers, as well as the organizations' employees, to obtain access to various types of information and services. Often, clients access the sites from locations that are geographically distributed around the world. As the sophistication and complexity of the content that is made available through the web sites increases, the number of different static and dynamically-generated components of individual web pages can also increase—for example, an HTTP (HyperText Transfer Protocol) request for a single URL (Universal Record Locator) may in some cases result in the transmission to the requester of several different image files of various kinds, numerous static text components, dynamically-generated results of several queries to a backend application server or database, and, in some cases, even content components retrieved dynamically from different third-party sources. Often the content provided is customized in some ways based on the preferences or profiles of the requester.
In at least some cases, the web sites are the primary interface through which the organizations market and sell their products—e.g., an online retailer may sell hundreds or thousands of products via its web sites. Especially in such scenarios, the perceived performance of the web site—e.g., how long it appears to take to navigate from one web page to another, or to retrieve search results, and so on—may be critical to the organization's financial success, as potential customers that are dissatisfied with the web site's responsiveness may take their business elsewhere.
With the increasing popularity in recent years of new web-enabled devices, such as smart phones and tablets, the problem of providing content fast enough to retain client interest and loyalty has become even more complicated, as the different devices (and the versions of web browsers installed on the devices) and the various types of network connections being used (e.g., over cellular links, public or home-based “wi-fi” links, or high-bandwidth corporate network links) may all have very different performance capabilities. Although a number of approaches to speed up perceived and actual web page delivery have been implemented, such as caching of web content at edge servers that are located geographically close to the requesting clients, asynchronous delivery of various types of web page components, and the like, slow responses to web requests remain a potential problem that can have a significant negative impact on an organization's business success.
While embodiments are described herein by way of example for several embodiments and illustrative drawings, those skilled in the art will recognize that embodiments are not limited to the embodiments or drawings described. It should be understood, that the drawings and detailed description thereto are not intended to limit embodiments to the particular form disclosed, but on the contrary, the intention is to cover all modifications, equivalents and alternatives falling within the spirit and scope as defined by the appended claims. The headings used herein are for organizational purposes only and are not meant to be used to limit the scope of the description or the claims. As used throughout this application, the word “may” is used in a permissive sense (i.e., meaning having the potential to), rather than the mandatory sense (i.e., meaning must). Similarly, the words “include,” “including,” and “includes” mean including, but not limited to.